package com.eaoa.vo.bus.base;

import java.io.Serializable;


/**
 * This is an object that contains data related to the bus_order table.
 * Do not modify this class because it will be overwritten if the configuration file
 * related to this class is modified.
 *
 * @hibernate.class
 *  table="bus_order"
 */

public abstract class BaseBusOrder  implements Serializable {

	public static String REF = "BusOrder";
	public static String PROP_FROMMANPHONE = "frommanphone";
	public static String PROP_PAYDETAIL = "paydetail";
	public static String PROP_FROMADDRESSPROVINCE = "fromaddressprovince";
	public static String PROP_ORDERNO = "orderno";
	public static String PROP_TOADDRESSDETAIL = "toaddressdetail";
	public static String PROP_TODATE = "todate";
	public static String PROP_WEIGHTSUM = "weightsum";
	public static String PROP_CHARGEDETAIL = "chargedetail";
	public static String PROP_REMARKS = "remarks";
	public static String PROP_NUMBERSUM = "numbersum";
	public static String PROP_PAYMETHOD = "paymethod";
	public static String PROP_CREATDATE = "creatdate";
	public static String PROP_TOMAN = "toman";
	public static String PROP_ISTRANSFER = "istransfer";
	public static String PROP_ISLOCK = "islock";
	public static String PROP_GOODSVALUE = "goodsvalue";
	public static String PROP_TOADDRESSNAME = "toaddressname";
	public static String PROP_TOADDRESSNO = "toaddressno";
	public static String PROP_FROMADDRESSCITY = "fromaddresscity";
	public static String PROP_PROXYCUSTOMLETER = "proxycustomleter";
	public static String PROP_SIZESUM = "sizesum";
	public static String PROP_PAY = "pay";
	public static String PROP_ISINSURE = "isinsure";
	public static String PROP_TOLASTDATE = "tolastdate";
	public static String PROP_TOSTOREBILLCODE = "tostorebillcode";
	public static String PROP_FROMADDRESSNO = "fromaddressno";
	public static String PROP_TOADDRESSCITY = "toaddresscity";
	public static String PROP_TOMANPHONE = "tomanphone";
	public static String PROP_CHARGE = "charge";
	public static String PROP_BILLSTATUS = "billstatus";
	public static String PROP_TOADDRESSPROVINCE = "toaddressprovince";
	public static String PROP_CREATORNO = "creatorno";
	public static String PROP_FROMMAN = "fromman";
	public static String PROP_COST = "cost";
	public static String PROP_TOADDRESSDISTRICT = "toaddressdistrict";
	public static String PROP_TOPICKUPISSELF = "topickupisself";
	public static String PROP_FROMADDRESSNAME = "fromaddressname";
	public static String PROP_BUS_TRANSFER = "busTransfer";
	public static String PROP_FROMDATE = "fromdate";
	public static String PROP_CREATORNAME = "creatorname";
	public static String PROP_FROMADDRESSDISTRICT = "fromaddressdistrict";
	public static String PROP_PUB_CUSTOMER = "pubCustomer";
	public static String PROP_FROMADDRESSDETAIL = "fromaddressdetail";
	public static String PROP_ORDERTYPE = "ordertype";
	public static String PROP_BILLCODE = "billcode";


	// constructors
	public BaseBusOrder () {
		initialize();
	}

	/**
	 * Constructor for primary key
	 */
	public BaseBusOrder (java.lang.Long orderno) {
		this.setOrderno(orderno);
		initialize();
	}

	/**
	 * Constructor for required fields
	 */
	public BaseBusOrder (
		java.lang.Long orderno,
		com.eaoa.vo.bus.BusTransfer busTransfer,
		com.eaoa.vo.pub.PubCustomer pubCustomer,
		java.lang.String billcode) {

		this.setOrderno(orderno);
		this.setBusTransfer(busTransfer);
		this.setPubCustomer(pubCustomer);
		this.setBillcode(billcode);
		initialize();
	}

	protected void initialize () {}



	private int hashCode = Integer.MIN_VALUE;

	// primary key
	private java.lang.Long orderno;

	// fields
	private java.lang.String billcode;
	private java.lang.String ordertype;
	private java.lang.Long fromaddressno;
	private java.lang.String fromaddressname;
	private java.lang.String fromaddressdetail;
	private java.lang.String fromaddressprovince;
	private java.lang.String fromaddresscity;
	private java.lang.String fromaddressdistrict;
	private java.util.Date fromdate;
	private java.lang.String fromman;
	private java.lang.String frommanphone;
	private java.lang.Long toaddressno;
	private java.lang.String toaddressname;
	private java.lang.String toaddressdetail;
	private java.lang.String toaddressprovince;
	private java.lang.String toaddresscity;
	private java.lang.String toaddressdistrict;
	private java.util.Date todate;
	private java.lang.String toman;
	private java.lang.String tomanphone;
	private java.util.Date tolastdate;
	private java.lang.String tostorebillcode;
	private java.lang.String topickupisself;
	private java.lang.String proxycustomleter;
	private java.lang.String paymethod;
	private java.lang.String isinsure;
	private java.math.BigDecimal goodsvalue;
	private java.lang.String remarks;
	private java.lang.String islock;
	private java.lang.String billstatus;
	private java.lang.Long creatorno;
	private java.lang.String creatorname;
	private java.util.Date creatdate;
	private java.lang.String istransfer;
	private java.math.BigDecimal weightsum;
	private java.math.BigDecimal numbersum;
	private java.math.BigDecimal sizesum;
	private java.math.BigDecimal cost;
	private java.math.BigDecimal charge;
	private java.lang.String chargedetail;
	private java.math.BigDecimal pay;
	private java.lang.String paydetail;

	// many to one
	private com.eaoa.vo.bus.BusTransfer busTransfer;
	private com.eaoa.vo.pub.PubCustomer pubCustomer;

	// collections
	private java.util.Set<com.eaoa.vo.bus.BusCargo> busCargos;



	/**
	 * Return the unique identifier of this class
     * @hibernate.id
     *  generator-class="increment"
     *  column="orderno"
     */
	public java.lang.Long getOrderno () {
		return orderno;
	}

	/**
	 * Set the unique identifier of this class
	 * @param orderno the new ID
	 */
	public void setOrderno (java.lang.Long orderno) {
		this.orderno = orderno;
		this.hashCode = Integer.MIN_VALUE;
	}




	/**
	 * Return the value associated with the column: billcode
	 */
	public java.lang.String getBillcode () {
		return billcode;
	}

	/**
	 * Set the value related to the column: billcode
	 * @param billcode the billcode value
	 */
	public void setBillcode (java.lang.String billcode) {
		this.billcode = billcode;
	}



	/**
	 * Return the value associated with the column: ordertype
	 */
	public java.lang.String getOrdertype () {
		return ordertype;
	}

	/**
	 * Set the value related to the column: ordertype
	 * @param ordertype the ordertype value
	 */
	public void setOrdertype (java.lang.String ordertype) {
		this.ordertype = ordertype;
	}



	/**
	 * Return the value associated with the column: fromaddressno
	 */
	public java.lang.Long getFromaddressno () {
		return fromaddressno;
	}

	/**
	 * Set the value related to the column: fromaddressno
	 * @param fromaddressno the fromaddressno value
	 */
	public void setFromaddressno (java.lang.Long fromaddressno) {
		this.fromaddressno = fromaddressno;
	}



	/**
	 * Return the value associated with the column: fromaddressname
	 */
	public java.lang.String getFromaddressname () {
		return fromaddressname;
	}

	/**
	 * Set the value related to the column: fromaddressname
	 * @param fromaddressname the fromaddressname value
	 */
	public void setFromaddressname (java.lang.String fromaddressname) {
		this.fromaddressname = fromaddressname;
	}



	/**
	 * Return the value associated with the column: fromaddressdetail
	 */
	public java.lang.String getFromaddressdetail () {
		return fromaddressdetail;
	}

	/**
	 * Set the value related to the column: fromaddressdetail
	 * @param fromaddressdetail the fromaddressdetail value
	 */
	public void setFromaddressdetail (java.lang.String fromaddressdetail) {
		this.fromaddressdetail = fromaddressdetail;
	}



	/**
	 * Return the value associated with the column: fromaddressprovince
	 */
	public java.lang.String getFromaddressprovince () {
		return fromaddressprovince;
	}

	/**
	 * Set the value related to the column: fromaddressprovince
	 * @param fromaddressprovince the fromaddressprovince value
	 */
	public void setFromaddressprovince (java.lang.String fromaddressprovince) {
		this.fromaddressprovince = fromaddressprovince;
	}



	/**
	 * Return the value associated with the column: fromaddresscity
	 */
	public java.lang.String getFromaddresscity () {
		return fromaddresscity;
	}

	/**
	 * Set the value related to the column: fromaddresscity
	 * @param fromaddresscity the fromaddresscity value
	 */
	public void setFromaddresscity (java.lang.String fromaddresscity) {
		this.fromaddresscity = fromaddresscity;
	}



	/**
	 * Return the value associated with the column: fromaddressdistrict
	 */
	public java.lang.String getFromaddressdistrict () {
		return fromaddressdistrict;
	}

	/**
	 * Set the value related to the column: fromaddressdistrict
	 * @param fromaddressdistrict the fromaddressdistrict value
	 */
	public void setFromaddressdistrict (java.lang.String fromaddressdistrict) {
		this.fromaddressdistrict = fromaddressdistrict;
	}



	/**
	 * Return the value associated with the column: fromdate
	 */
	public java.util.Date getFromdate () {
		return fromdate;
	}

	/**
	 * Set the value related to the column: fromdate
	 * @param fromdate the fromdate value
	 */
	public void setFromdate (java.util.Date fromdate) {
		this.fromdate = fromdate;
	}



	/**
	 * Return the value associated with the column: fromman
	 */
	public java.lang.String getFromman () {
		return fromman;
	}

	/**
	 * Set the value related to the column: fromman
	 * @param fromman the fromman value
	 */
	public void setFromman (java.lang.String fromman) {
		this.fromman = fromman;
	}



	/**
	 * Return the value associated with the column: frommanphone
	 */
	public java.lang.String getFrommanphone () {
		return frommanphone;
	}

	/**
	 * Set the value related to the column: frommanphone
	 * @param frommanphone the frommanphone value
	 */
	public void setFrommanphone (java.lang.String frommanphone) {
		this.frommanphone = frommanphone;
	}



	/**
	 * Return the value associated with the column: toaddressno
	 */
	public java.lang.Long getToaddressno () {
		return toaddressno;
	}

	/**
	 * Set the value related to the column: toaddressno
	 * @param toaddressno the toaddressno value
	 */
	public void setToaddressno (java.lang.Long toaddressno) {
		this.toaddressno = toaddressno;
	}



	/**
	 * Return the value associated with the column: toaddressname
	 */
	public java.lang.String getToaddressname () {
		return toaddressname;
	}

	/**
	 * Set the value related to the column: toaddressname
	 * @param toaddressname the toaddressname value
	 */
	public void setToaddressname (java.lang.String toaddressname) {
		this.toaddressname = toaddressname;
	}



	/**
	 * Return the value associated with the column: toaddressdetail
	 */
	public java.lang.String getToaddressdetail () {
		return toaddressdetail;
	}

	/**
	 * Set the value related to the column: toaddressdetail
	 * @param toaddressdetail the toaddressdetail value
	 */
	public void setToaddressdetail (java.lang.String toaddressdetail) {
		this.toaddressdetail = toaddressdetail;
	}



	/**
	 * Return the value associated with the column: toaddressprovince
	 */
	public java.lang.String getToaddressprovince () {
		return toaddressprovince;
	}

	/**
	 * Set the value related to the column: toaddressprovince
	 * @param toaddressprovince the toaddressprovince value
	 */
	public void setToaddressprovince (java.lang.String toaddressprovince) {
		this.toaddressprovince = toaddressprovince;
	}



	/**
	 * Return the value associated with the column: toaddresscity
	 */
	public java.lang.String getToaddresscity () {
		return toaddresscity;
	}

	/**
	 * Set the value related to the column: toaddresscity
	 * @param toaddresscity the toaddresscity value
	 */
	public void setToaddresscity (java.lang.String toaddresscity) {
		this.toaddresscity = toaddresscity;
	}



	/**
	 * Return the value associated with the column: toaddressdistrict
	 */
	public java.lang.String getToaddressdistrict () {
		return toaddressdistrict;
	}

	/**
	 * Set the value related to the column: toaddressdistrict
	 * @param toaddressdistrict the toaddressdistrict value
	 */
	public void setToaddressdistrict (java.lang.String toaddressdistrict) {
		this.toaddressdistrict = toaddressdistrict;
	}



	/**
	 * Return the value associated with the column: todate
	 */
	public java.util.Date getTodate () {
		return todate;
	}

	/**
	 * Set the value related to the column: todate
	 * @param todate the todate value
	 */
	public void setTodate (java.util.Date todate) {
		this.todate = todate;
	}



	/**
	 * Return the value associated with the column: toman
	 */
	public java.lang.String getToman () {
		return toman;
	}

	/**
	 * Set the value related to the column: toman
	 * @param toman the toman value
	 */
	public void setToman (java.lang.String toman) {
		this.toman = toman;
	}



	/**
	 * Return the value associated with the column: tomanphone
	 */
	public java.lang.String getTomanphone () {
		return tomanphone;
	}

	/**
	 * Set the value related to the column: tomanphone
	 * @param tomanphone the tomanphone value
	 */
	public void setTomanphone (java.lang.String tomanphone) {
		this.tomanphone = tomanphone;
	}



	/**
	 * Return the value associated with the column: tolastdate
	 */
	public java.util.Date getTolastdate () {
		return tolastdate;
	}

	/**
	 * Set the value related to the column: tolastdate
	 * @param tolastdate the tolastdate value
	 */
	public void setTolastdate (java.util.Date tolastdate) {
		this.tolastdate = tolastdate;
	}



	/**
	 * Return the value associated with the column: tostorebillcode
	 */
	public java.lang.String getTostorebillcode () {
		return tostorebillcode;
	}

	/**
	 * Set the value related to the column: tostorebillcode
	 * @param tostorebillcode the tostorebillcode value
	 */
	public void setTostorebillcode (java.lang.String tostorebillcode) {
		this.tostorebillcode = tostorebillcode;
	}



	/**
	 * Return the value associated with the column: topickupisself
	 */
	public java.lang.String getTopickupisself () {
		return topickupisself;
	}

	/**
	 * Set the value related to the column: topickupisself
	 * @param topickupisself the topickupisself value
	 */
	public void setTopickupisself (java.lang.String topickupisself) {
		this.topickupisself = topickupisself;
	}



	/**
	 * Return the value associated with the column: proxycustomleter
	 */
	public java.lang.String getProxycustomleter () {
		return proxycustomleter;
	}

	/**
	 * Set the value related to the column: proxycustomleter
	 * @param proxycustomleter the proxycustomleter value
	 */
	public void setProxycustomleter (java.lang.String proxycustomleter) {
		this.proxycustomleter = proxycustomleter;
	}



	/**
	 * Return the value associated with the column: paymethod
	 */
	public java.lang.String getPaymethod () {
		return paymethod;
	}

	/**
	 * Set the value related to the column: paymethod
	 * @param paymethod the paymethod value
	 */
	public void setPaymethod (java.lang.String paymethod) {
		this.paymethod = paymethod;
	}



	/**
	 * Return the value associated with the column: isinsure
	 */
	public java.lang.String getIsinsure () {
		return isinsure;
	}

	/**
	 * Set the value related to the column: isinsure
	 * @param isinsure the isinsure value
	 */
	public void setIsinsure (java.lang.String isinsure) {
		this.isinsure = isinsure;
	}



	/**
	 * Return the value associated with the column: goodsvalue
	 */
	public java.math.BigDecimal getGoodsvalue () {
		return goodsvalue;
	}

	/**
	 * Set the value related to the column: goodsvalue
	 * @param goodsvalue the goodsvalue value
	 */
	public void setGoodsvalue (java.math.BigDecimal goodsvalue) {
		this.goodsvalue = goodsvalue;
	}



	/**
	 * Return the value associated with the column: remarks
	 */
	public java.lang.String getRemarks () {
		return remarks;
	}

	/**
	 * Set the value related to the column: remarks
	 * @param remarks the remarks value
	 */
	public void setRemarks (java.lang.String remarks) {
		this.remarks = remarks;
	}



	/**
	 * Return the value associated with the column: islock
	 */
	public java.lang.String getIslock () {
		return islock;
	}

	/**
	 * Set the value related to the column: islock
	 * @param islock the islock value
	 */
	public void setIslock (java.lang.String islock) {
		this.islock = islock;
	}



	/**
	 * Return the value associated with the column: billstatus
	 */
	public java.lang.String getBillstatus () {
		return billstatus;
	}

	/**
	 * Set the value related to the column: billstatus
	 * @param billstatus the billstatus value
	 */
	public void setBillstatus (java.lang.String billstatus) {
		this.billstatus = billstatus;
	}



	/**
	 * Return the value associated with the column: creatorno
	 */
	public java.lang.Long getCreatorno () {
		return creatorno;
	}

	/**
	 * Set the value related to the column: creatorno
	 * @param creatorno the creatorno value
	 */
	public void setCreatorno (java.lang.Long creatorno) {
		this.creatorno = creatorno;
	}



	/**
	 * Return the value associated with the column: creatorname
	 */
	public java.lang.String getCreatorname () {
		return creatorname;
	}

	/**
	 * Set the value related to the column: creatorname
	 * @param creatorname the creatorname value
	 */
	public void setCreatorname (java.lang.String creatorname) {
		this.creatorname = creatorname;
	}



	/**
	 * Return the value associated with the column: creatdate
	 */
	public java.util.Date getCreatdate () {
		return creatdate;
	}

	/**
	 * Set the value related to the column: creatdate
	 * @param creatdate the creatdate value
	 */
	public void setCreatdate (java.util.Date creatdate) {
		this.creatdate = creatdate;
	}



	/**
	 * Return the value associated with the column: istransfer
	 */
	public java.lang.String getIstransfer () {
		return istransfer;
	}

	/**
	 * Set the value related to the column: istransfer
	 * @param istransfer the istransfer value
	 */
	public void setIstransfer (java.lang.String istransfer) {
		this.istransfer = istransfer;
	}



	/**
	 * Return the value associated with the column: weightsum
	 */
	public java.math.BigDecimal getWeightsum () {
		return weightsum;
	}

	/**
	 * Set the value related to the column: weightsum
	 * @param weightsum the weightsum value
	 */
	public void setWeightsum (java.math.BigDecimal weightsum) {
		this.weightsum = weightsum;
	}



	/**
	 * Return the value associated with the column: numbersum
	 */
	public java.math.BigDecimal getNumbersum () {
		return numbersum;
	}

	/**
	 * Set the value related to the column: numbersum
	 * @param numbersum the numbersum value
	 */
	public void setNumbersum (java.math.BigDecimal numbersum) {
		this.numbersum = numbersum;
	}



	/**
	 * Return the value associated with the column: sizesum
	 */
	public java.math.BigDecimal getSizesum () {
		return sizesum;
	}

	/**
	 * Set the value related to the column: sizesum
	 * @param sizesum the sizesum value
	 */
	public void setSizesum (java.math.BigDecimal sizesum) {
		this.sizesum = sizesum;
	}



	/**
	 * Return the value associated with the column: cost
	 */
	public java.math.BigDecimal getCost () {
		return cost;
	}

	/**
	 * Set the value related to the column: cost
	 * @param cost the cost value
	 */
	public void setCost (java.math.BigDecimal cost) {
		this.cost = cost;
	}



	/**
	 * Return the value associated with the column: charge
	 */
	public java.math.BigDecimal getCharge () {
		return charge;
	}

	/**
	 * Set the value related to the column: charge
	 * @param charge the charge value
	 */
	public void setCharge (java.math.BigDecimal charge) {
		this.charge = charge;
	}



	/**
	 * Return the value associated with the column: chargedetail
	 */
	public java.lang.String getChargedetail () {
		return chargedetail;
	}

	/**
	 * Set the value related to the column: chargedetail
	 * @param chargedetail the chargedetail value
	 */
	public void setChargedetail (java.lang.String chargedetail) {
		this.chargedetail = chargedetail;
	}



	/**
	 * Return the value associated with the column: pay
	 */
	public java.math.BigDecimal getPay () {
		return pay;
	}

	/**
	 * Set the value related to the column: pay
	 * @param pay the pay value
	 */
	public void setPay (java.math.BigDecimal pay) {
		this.pay = pay;
	}



	/**
	 * Return the value associated with the column: paydetail
	 */
	public java.lang.String getPaydetail () {
		return paydetail;
	}

	/**
	 * Set the value related to the column: paydetail
	 * @param paydetail the paydetail value
	 */
	public void setPaydetail (java.lang.String paydetail) {
		this.paydetail = paydetail;
	}



	/**
	 * Return the value associated with the column: transferno
	 */
	public com.eaoa.vo.bus.BusTransfer getBusTransfer () {
		return busTransfer;
	}

	/**
	 * Set the value related to the column: transferno
	 * @param busTransfer the transferno value
	 */
	public void setBusTransfer (com.eaoa.vo.bus.BusTransfer busTransfer) {
		this.busTransfer = busTransfer;
	}



	/**
	 * Return the value associated with the column: customerno
	 */
	public com.eaoa.vo.pub.PubCustomer getPubCustomer () {
		return pubCustomer;
	}

	/**
	 * Set the value related to the column: customerno
	 * @param pubCustomer the customerno value
	 */
	public void setPubCustomer (com.eaoa.vo.pub.PubCustomer pubCustomer) {
		this.pubCustomer = pubCustomer;
	}



	/**
	 * Return the value associated with the column: busCargos
	 */
	public java.util.Set<com.eaoa.vo.bus.BusCargo> getBusCargos () {
		return busCargos;
	}

	/**
	 * Set the value related to the column: busCargos
	 * @param busCargos the busCargos value
	 */
	public void setBusCargos (java.util.Set<com.eaoa.vo.bus.BusCargo> busCargos) {
		this.busCargos = busCargos;
	}

	public void addTobusCargos (com.eaoa.vo.bus.BusCargo busCargo) {
		if (null == getBusCargos()) setBusCargos(new java.util.TreeSet<com.eaoa.vo.bus.BusCargo>());
		getBusCargos().add(busCargo);
	}




	public boolean equals (Object obj) {
		if (null == obj) return false;
		if (!(obj instanceof com.eaoa.vo.bus.BusOrder)) return false;
		else {
			com.eaoa.vo.bus.BusOrder busOrder = (com.eaoa.vo.bus.BusOrder) obj;
			if (null == this.getOrderno() || null == busOrder.getOrderno()) return false;
			else return (this.getOrderno().equals(busOrder.getOrderno()));
		}
	}

	public int hashCode () {
		if (Integer.MIN_VALUE == this.hashCode) {
			if (null == this.getOrderno()) return super.hashCode();
			else {
				String hashStr = this.getClass().getName() + ":" + this.getOrderno().hashCode();
				this.hashCode = hashStr.hashCode();
			}
		}
		return this.hashCode;
	}


	public String toString () {
		return super.toString();
	}


}